home *** CD-ROM | disk | FTP | other *** search
/ Aminet 30 / Aminet 30 (1999)(Schatztruhe)[!][Apr 1999].iso / Aminet / dev / lang / SmallEiffel.lha / SmallEiffel / bin_c / compile_to_c1.c < prev    next >
C/C++ Source or Header  |  1998-12-22  |  16KB  |  763 lines

  1. /*
  2. -- ANSI C code generated by :
  3. -- SmallEiffel The GNU Eiffel Compiler -- Release (- 0.79)      --
  4. -- Copyright (C), 1994-98 - LORIA - UHP - CRIN - INRIA - FRANCE --
  5. -- Dominique COLNET and Suzanne COLLIN -    colnet@loria.fr     --
  6. --                 http://www.loria.fr/SmallEiffel              --
  7. */
  8. #include "compile_to_c.h"
  9. T55 M55={55,NULL,NULL,NULL,NULL};
  10. T107 M107={NULL,NULL};
  11. T276 M276={276,NULL,NULL,NULL,NULL};
  12. T76 M76={NULL,0,0,0};
  13. T215 M215={NULL,NULL,NULL,NULL,NULL,0};
  14. T221 M221={221,NULL,0,0,0};
  15. T220 M220={220,NULL,NULL,NULL,NULL};
  16. T213 M213={213,NULL,NULL,NULL,NULL,NULL,NULL};
  17. T132 M132={132,NULL,NULL,NULL,NULL,0};
  18. T170 M170={170,NULL,0,0};
  19. T282 M282={282,NULL,NULL};
  20. T43 M43={0,0,NULL,0,0,NULL};
  21. T321 M321={NULL};
  22. T316 M316={NULL,NULL};
  23. T64 M64={NULL,NULL};
  24. T73 M73={NULL,NULL,0,NULL,NULL,0,0,0,0};
  25. T310 M310={310,NULL};
  26. T286 M286={NULL,NULL,NULL,NULL,NULL,0};
  27. T250 M250={250,NULL,NULL,NULL,NULL};
  28. T119 M119={119,NULL,NULL,NULL,NULL,0};
  29. T174 M174={174,NULL,0};
  30. T270 M270={270,NULL};
  31. T268 M268={268,NULL};
  32. T365 M365={365,NULL,NULL,NULL};
  33. T277 M277={277,NULL,NULL,NULL,NULL,0};
  34. T382 M382={382,NULL,0,0};
  35. T57 M57={57,NULL,0,0};
  36. T86 M86={NULL,0,0};
  37. T138 M138={138,NULL,NULL,NULL};
  38. T298 M298={298};
  39. T36 M36={NULL,NULL,NULL};
  40. T27 M27={0};
  41. T280 M280={280,NULL,0,NULL};
  42. T171 M171={171,NULL,NULL,NULL,NULL,NULL,NULL};
  43. T187 M187={187,NULL,NULL};
  44. T66 M66={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  45. T356 M356={356,NULL,NULL,NULL,NULL,0,NULL,NULL};
  46. T85 M85={NULL,NULL};
  47. T104 M104={NULL,NULL,NULL,NULL,NULL};
  48. T195 M195={NULL,NULL};
  49. T193 M193={193,NULL,NULL};
  50. T109 M109={NULL,0,0};
  51. T246 M246={246,NULL,NULL,NULL};
  52. T34 M34={0,0,0,0,0,NULL,0,NULL,0,0,NULL,0,0,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,0};
  53. T113 M113={113,NULL,NULL,NULL,NULL,0};
  54. T375 M375={375,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL};
  55. T165 M165={165,NULL,NULL,NULL,NULL};
  56. T275 M275={275,NULL,NULL,NULL,NULL,NULL};
  57. T191 M191={191,NULL,0,0,0};
  58. T97 M97={NULL,0,0,0};
  59. T202 M202={202,NULL,0,0};
  60. T145 M145={145,NULL,NULL,NULL};
  61. T218 M218={218,NULL,NULL};
  62. T156 M156={156,NULL,NULL};
  63. T178 M178={178,NULL,NULL};
  64. T269 M269={269,NULL};
  65. T121 M121={121,NULL,NULL,NULL,NULL,0};
  66. T261 M261={NULL,0,0,0};
  67. T291 M291={291,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  68. T22 M22={NULL,0,0,0,0};
  69. T252 M252={252,NULL,NULL,NULL,NULL,NULL};
  70. T331 M331=0;
  71. T47 M47={NULL,0,0};
  72. T123 M123={123,NULL,NULL,NULL,NULL,0};
  73. T324 M324={324,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,0};
  74. T296 M296={296};
  75. T148 M148={148,NULL,NULL,NULL};
  76. T273 M273={273,NULL};
  77. T142 M142={142,NULL,NULL,NULL};
  78. T157 M157={157,NULL};
  79. T88 M88={NULL,NULL};
  80. T315 M315={315,NULL};
  81. T29 M29=NULL;
  82. T245 M245={245,NULL,NULL,NULL,NULL};
  83. T130 M130={130,NULL,NULL,NULL};
  84. T122 M122={122,NULL,NULL,NULL,NULL,0};
  85. T360 M360={360,NULL,0,0,0};
  86. T89 M89={NULL,0,0,0};
  87. T185 M185={185,NULL,0,0,0};
  88. T318 M318={NULL,0,0,0};
  89. T308 M308={NULL,0,0,0};
  90. T332 M332=0;
  91. T7 M7={NULL,0,0};
  92. T168 M168={168,NULL};
  93. T17 M17={0};
  94. T146 M146={146,NULL,NULL,NULL};
  95. T314 M314={314,NULL,NULL,NULL,NULL,NULL,0};
  96. T388 M388={388,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL,0,0,0};
  97. T279 M279={NULL,0,0,0};
  98. T211 M211={211,NULL,NULL,NULL,NULL,NULL,NULL};
  99. T290 M290={290,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  100. T226 M226={NULL,NULL,NULL};
  101. T101 M101={NULL,NULL};
  102. T303 M303={303,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL};
  103. T10 M10={0,NULL,NULL,NULL};
  104. T364 M364={NULL,NULL,NULL};
  105. T84 M84=NULL;
  106. T96 M96={NULL,NULL,NULL};
  107. T254 M254={254,NULL,NULL,NULL,NULL,NULL,NULL};
  108. T72 M72={NULL,0};
  109. T120 M120={120,NULL,NULL,NULL,NULL,0};
  110. T153 M153={153,NULL,NULL,NULL,NULL};
  111. T87 M87={NULL};
  112. T59 M59={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  113. T92 M92={NULL,NULL,0,NULL,NULL,0,0,0,0};
  114. T361 M361={361,NULL,0,0,0};
  115. T266 M266={266,NULL};
  116. T78 M78={NULL,NULL,NULL,NULL};
  117. T379 M379={NULL,NULL,0,NULL,NULL,0,0,0,0};
  118. T348 M348={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  119. T70 M70={NULL,0};
  120. T390 M390={390,NULL,0,0};
  121. T385 M385={385,NULL,0,0};
  122. T367 M367={367,NULL,0,0};
  123. T352 M352={352,NULL,0,0};
  124. T345 M345={345,NULL,0,0};
  125. T49 M49={49,NULL,0,0};
  126. T137 M137={137,NULL,NULL,NULL,NULL,0};
  127. T177 M177={177,NULL,NULL,NULL,NULL,NULL};
  128. T102 M102={NULL,NULL};
  129. T233 M233={NULL,NULL,NULL,NULL,NULL,NULL};
  130. T205 M205={205,NULL,NULL,NULL,NULL,NULL,NULL};
  131. T389 M389={389,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL};
  132. T82 M82={NULL,NULL};
  133. T374 M374={374,NULL,NULL};
  134. T313 M313={313,NULL};
  135. T103 M103={NULL,NULL,NULL,NULL};
  136. T283 M283={283,NULL,NULL,NULL};
  137. T380 M380={380,NULL,0,0};
  138. T208 M208={208,NULL,0,0};
  139. T198 M198={NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  140. T158 M158={158,NULL,NULL};
  141. T204 M204={0};
  142. T305 M305={305,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0};
  143. T21 M21={0,0,0};
  144. T79 M79={NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  145. T244 M244={244,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  146. T139 M139={139,NULL,NULL,NULL};
  147. T354 M354={NULL,0,0,0};
  148. T172 M172={NULL,0,0,0};
  149. T333 M333={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  150. T147 M147={147,NULL,NULL,NULL};
  151. T155 M155={155,NULL,NULL};
  152. T320 M320={NULL,NULL};
  153. T278 M278={NULL,NULL};
  154. T263 M263={263,NULL,NULL,NULL,NULL};
  155. T267 M267={267,NULL};
  156. T212 M212={212,NULL,NULL,NULL,NULL,NULL,NULL};
  157. T199 M199={199,NULL,NULL,NULL,NULL,NULL,NULL};
  158. T341 M341=NULL;
  159. T50 M50={50,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL,NULL};
  160. T271 M271={271,NULL};
  161. T95 M95={NULL};
  162. T94 M94={NULL,NULL};
  163. T210 M210={210,NULL,NULL,NULL,NULL,NULL,NULL};
  164. T297 M297={297};
  165. T357 M357={NULL};
  166. T133 M133={133,NULL,NULL,NULL,NULL,0};
  167. T183 M183={183,NULL,NULL,NULL,0,0};
  168. T317 M317={NULL,NULL};
  169. T377 M377={377,NULL,NULL};
  170. T124 M124={124,NULL,NULL,NULL,NULL,0};
  171. T126 M126={126,NULL,NULL,NULL,NULL,0};
  172. T243 M243={NULL,NULL,NULL,NULL,NULL};
  173. T257 M257={257,NULL,NULL};
  174. T45 M45={NULL,0};
  175. T340 M340={NULL,0,0};
  176. T62 M62={NULL,0,0};
  177. T39 M39={NULL,0,0,0};
  178. T80 M80={NULL,0,0,0};
  179. T235 M235={NULL,0,0,0};
  180. T228 M228={NULL,0,0,0};
  181. T260 M260={260,NULL,NULL,NULL,NULL};
  182. T173 M173={173,NULL,NULL};
  183. T358 M358={NULL,0,0,0};
  184. T328 M328={NULL,0,0,0};
  185. T180 M180={180,NULL,0,NULL};
  186. T106 M106={NULL,0,0,0};
  187. T238 M238={NULL,0,0,0};
  188. T387 M387={387,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL};
  189. T175 M175={175,NULL,NULL,NULL,NULL,NULL};
  190. T274 M274={274,NULL,NULL,NULL,NULL};
  191. T334 M334={NULL,0,0};
  192. T371 M371={NULL};
  193. T272 M272={272,NULL};
  194. T264 M264={264,NULL};
  195. T293 M293={293};
  196. T347 M347=NULL;
  197. T349 M349=NULL;
  198. T231 M231={231,NULL,NULL};
  199. T343 M343={343,NULL,0,0};
  200. T366 M366={366,NULL};
  201. T35 M35=NULL;
  202. T295 M295={295};
  203. T135 M135={135,NULL,NULL,NULL,NULL,0};
  204. T384 M384={384,NULL,NULL,NULL,NULL,NULL,NULL,0,0,NULL,NULL,NULL};
  205. T344 M344=NULL;
  206. T255 M255={255,NULL,NULL,NULL,NULL};
  207. T350 M350={350,NULL,0,0};
  208. T67 M67={NULL,0,0};
  209. T151 M151={151,NULL,0,0};
  210. T196 M196={NULL,0,0};
  211. T300 M300={300};
  212. T194 M194={194,NULL,NULL,NULL,NULL,0};
  213. T28 M28={0};
  214. T163 M163={163,NULL,NULL,NULL};
  215. T322 M322={NULL,0,0,0};
  216. T258 M258={258,NULL,NULL,NULL,NULL};
  217. T207 M207={207,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  218. T60 M60={NULL,0,0};
  219. T99 M99={99,NULL,0,0};
  220. T110 M110={110,NULL,NULL,NULL,NULL};
  221. T287 M287={287,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  222. T342 M342={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  223. T292 M292={292};
  224. T75 M75={NULL,NULL,NULL,NULL};
  225. T240 M240={240,NULL,NULL,0};
  226. T363 M363={0};
  227. T152 M152={152,NULL,NULL,NULL,NULL};
  228. T150 M150={150,NULL,NULL,NULL};
  229. T330 M330={0,0};
  230. T74 M74={NULL};
  231. T24 M24={NULL,0,0,NULL,NULL,0,NULL,0,0,0,0,NULL,NULL};
  232. T232 M232={232,NULL,NULL,NULL,NULL,NULL,NULL};
  233. T190 M190={190,NULL,NULL,NULL,0};
  234. T164 M164={164,NULL,NULL,NULL,NULL};
  235. T326 M326={326,NULL,0,0};
  236. T217 M217={NULL,0,0};
  237. T134 M134={134,NULL,NULL,NULL,NULL,0};
  238. T234 M234={NULL,NULL};
  239. T368 M368={368,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL};
  240. T219 M219={NULL,NULL,NULL,NULL,NULL};
  241. T336 M336={NULL,0,0};
  242. T216 M216={NULL,NULL,NULL,NULL};
  243. T111 M111={111,NULL,0,0,0};
  244. T247 M247={247,NULL,NULL,NULL};
  245. T325 M325={NULL,NULL,0,NULL,NULL,0,0,0,0,0};
  246. T338 M338={NULL,0,0};
  247. T25 M25={NULL,0,0,0,0,0,0,0,0,0,0,0,0,NULL,NULL,NULL,NULL,NULL,0,0,0,0,0,NULL,0,0,NULL,NULL,NULL,0,0,NULL,0};
  248. T241 M241={241,NULL,NULL,NULL,0,0};
  249. T285 M285={285,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  250. T125 M125={125,NULL,NULL,NULL,NULL,0};
  251. T127 M127={127,NULL,NULL,NULL,NULL,0};
  252. T128 M128={128,NULL,NULL,NULL};
  253. T302 M302={302,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0};
  254. T373 M373={373,NULL,NULL,NULL};
  255. T378 M378={378,NULL,NULL,NULL};
  256. T69 M69={NULL,0,0};
  257. T136 M136={136,NULL,NULL,NULL,NULL,0};
  258. T149 M149={149,NULL,NULL,NULL};
  259. T144 M144={144,NULL,NULL,NULL};
  260. T131 M131={131,NULL,NULL,NULL,NULL,0};
  261. T160 M160={160,NULL,NULL,NULL};
  262. T206 M206={206,NULL,NULL,NULL,NULL,NULL,NULL};
  263. T259 M259={259,NULL};
  264. T63 M63={0,NULL,NULL,NULL,0,0,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL};
  265. T227 M227={NULL,NULL};
  266. T230 M230={230,NULL,NULL};
  267. T143 M143={143,NULL,NULL,NULL};
  268. T169 M169={169,NULL};
  269. T188 M188={188,NULL,0,NULL};
  270. T225 M225={225,NULL,NULL};
  271. T222 M222={222,NULL,NULL,NULL,NULL};
  272. T376 M376={376,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL};
  273. T306 M306={306,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL};
  274. T37 M37={0,NULL,0,0};
  275. T44 M44=0;
  276. T372 M372={372,NULL,NULL,NULL,NULL,NULL,NULL,0,NULL,NULL,NULL,NULL,NULL};
  277.  
  278.  
  279. T7*se_ms(int c,char*e){
  280. T7*s=malloc(sizeof(T7));
  281. s->_count=c;
  282. s->_capacity=c+1;
  283. s->_storage=malloc(c+2);
  284. memcpy(s->_storage,e,c);
  285. return s;}
  286.  
  287.  
  288. T7*e2s(char*e){
  289. return se_ms(strlen(e),e);}
  290.  
  291.  
  292. char*s2e(T7*s){
  293. char*e=malloc(1+s->_count);
  294. memcpy(e,s->_storage,s->_count);
  295. e[s->_count]='\0';
  296. return e;}
  297. /*
  298. -- This file is  free  software, which  comes  along  with  SmallEiffel. This
  299. -- software  is  distributed  in the hope that it will be useful, but WITHOUT 
  300. -- ANY  WARRANTY;  without  even  the  implied warranty of MERCHANTABILITY or
  301. -- FITNESS  FOR A PARTICULAR PURPOSE. You can modify it as you want, provided
  302. -- this header is kept unaltered, and a notification of the changes is added.
  303. -- You  are  allowed  to  redistribute  it and sell it, alone or as a part of 
  304. -- another product.
  305. --          Copyright (C) 1994-98 LORIA - UHP - CRIN - INRIA - FRANCE
  306. --            Dominique COLNET and Suzanne COLLIN - colnet@loria.fr 
  307. --                       http://www.loria.fr/SmallEiffel
  308. --
  309. */
  310.  
  311. /*
  312.   This file (boost.c) is automatically included when `run_control.boost' is
  313.   true (ie. only for mode -boost).
  314. */
  315.  
  316. void se_print_run_time_stack (void) {
  317.   fprintf(SE_ERR,"Eiffel program crash at run time.\n");
  318.   fprintf(SE_ERR,"No trace when using option \"-boost\"\n");
  319. }
  320.  
  321. void sigrsp(int sig) {
  322.   printf("Received signal %d (man signal).\n",sig);
  323.   se_print_run_time_stack();
  324.   exit(1);
  325. }
  326. int fBC5tmp_native_array=0;
  327. T9 oBC5tmp_native_array=NULL;
  328.  
  329.  
  330. T9 r5tmp_native_array(void){
  331. if(fBC5tmp_native_array==0){
  332. fBC5tmp_native_array=1;
  333. oBC5tmp_native_array=calloc(128,sizeof(T3));
  334. }
  335. return oBC5tmp_native_array;}
  336.  
  337.  
  338. void r5append_in_format(T5 C,T0* a1,T2 a2){
  339. T2 _i=0;
  340. {int i;
  341. double d=C;
  342. sprintf(_spfd+2,"%d",(a2));
  343. for(i=2;_spfd[i]!=0;i++);
  344. _spfd[i]='f';
  345. _spfd[++i]=0;
  346. sprintf((r5tmp_native_array()),_spfd,d);
  347. }
  348. _i=0;
  349. while (!(((r5tmp_native_array())[_i])==('\0'))) {
  350. r7extend(((T7*)a1),(r5tmp_native_array())[_i]);
  351. _i=(_i)+(1);
  352. }
  353. }
  354.  
  355.  
  356. T6 r6_ix_not(T6 C){
  357. T6 R=0;
  358. /*[IF*/
  359. if(C){
  360. }
  361. else{
  362. R=1;
  363. }
  364. /*FI]*/
  365. return R;
  366. }
  367.  
  368.  
  369. void r2append_in(T2 C,T0* a1){
  370. T2 _i=0;
  371. T2 _val=0;
  372. /*[IF*/
  373. if((C)==(0)){
  374. r7extend(((T7*)a1),'0');
  375. }
  376. else{
  377. /*[IF*/
  378. if((C)>(0)){
  379. _i=((((T7*)a1))->_count/*4*/)+(1);
  380. _val=C;
  381. while (!((_val)==(0))) {
  382. r7extend(((T7*)a1),r2digit((_val)%(10)));
  383. _val=(_val)/(10);
  384. }
  385. }
  386. else{
  387. r7extend(((T7*)a1),'\55');
  388. _i=((((T7*)a1))->_count/*4*/)+(1);
  389. _val=C;
  390. while (!((_val)==(0))) {
  391. r7extend(((T7*)a1),r2digit(-((_val)%(10))));
  392. _val=(_val)/(10);
  393. }
  394. }
  395. /*FI]*/
  396. _val=(((T7*)a1))->_count/*4*/;
  397. while (!((_i)>=(_val))) {
  398. r7swap(((T7*)a1),_i,_val);
  399. _val=(_val)-(1);
  400. _i=(_i)+(1);
  401. }
  402. }
  403. /*FI]*/
  404. }
  405.  
  406.  
  407. T0* r2to_string(T2 C){
  408. T0* R=NULL;
  409. {T7*n=malloc(sizeof(*n));
  410. *n=M7;
  411. r7make(n,0);
  412. R=(T0*)n;
  413. }
  414. r2append_in(C,R);
  415. return R;
  416. }
  417.  
  418.  
  419. T3 r2hexadecimal_digit(T2 C){
  420. T3 R=0;
  421. /*[IF*/
  422. if((C)<=(9)){
  423. R=r2digit(C);
  424. }
  425. else{
  426. R=((T3)((((unsigned char)'A'))+((C)-(10))));
  427. }
  428. /*FI]*/
  429. return R;
  430. }
  431.  
  432.  
  433. T2 r2min(T2 C,T2 a1){
  434. T2 R=0;
  435. /*[IF*/
  436. if((C)<(a1)){
  437. R=C;
  438. }
  439. else{
  440. R=a1;
  441. }
  442. /*FI]*/
  443. return R;
  444. }
  445.  
  446.  
  447. T3 r2digit(T2 C){
  448. T3 R=0;
  449. R=((T3)((C)+(((unsigned char)'0'))));
  450. return R;
  451. }
  452.  
  453.  
  454. T2 r2_px_94(T2 C,T2 a1){
  455. T2 R=0;
  456. /*[IF*/
  457. if((a1)==(0)){
  458. R=1;
  459. }
  460.  else if(((a1)%(2))==(0)){
  461. R=r2_px_94((C)*(C),(a1)/(2));
  462. }
  463. else{
  464. R=(C)*(r2_px_94(C,(a1)-(1)));
  465. }
  466. /*FI]*/
  467. return R;
  468. }
  469.  
  470.  
  471. T2 r2max(T2 C,T2 a1){
  472. T2 R=0;
  473. /*[IF*/
  474. if((a1)<(C)){
  475. R=C;
  476. }
  477. else{
  478. R=a1;
  479. }
  480. /*FI]*/
  481. return R;
  482. }
  483.  
  484.  
  485. T2 r2to_octal(T2 C){
  486. T2 R=0;
  487. /*[IF*/
  488. if((C)==(0)){
  489. }
  490.  else if((C)<(0)){
  491. R=-(r2to_octal(-(C)));
  492. }
  493. else{
  494. /*[IRF3.3clear*/((((T7*)((T7*)(oBC2tmp_string))))->_count)=(0);
  495. /*]*/
  496. R=C;
  497. while (!((R)==(0))) {
  498. r7extend((T7*)(oBC2tmp_string),r2digit((R)%(8)));
  499. R=(R)/(8);
  500. }
  501. r7reverse((T7*)(oBC2tmp_string));
  502. R=r7to_integer((T7*)(oBC2tmp_string));
  503. }
  504. /*FI]*/
  505. return R;
  506. }
  507. T0*oBC2tmp_string=NULL;
  508.  
  509.  
  510. T2 r2hash_code(T2 C){
  511. T2 R=0;
  512. /*[IF*/
  513. if((C)<(0)){
  514. R=-((C)+(1));
  515. }
  516. else{
  517. R=C;
  518. }
  519. /*FI]*/
  520. return R;
  521. }
  522.  
  523.  
  524. T3 r3to_upper(T3 C){
  525. T3 R=0;
  526. /*[IF*/
  527. if((((unsigned char)C))<(97)){
  528. R=C;
  529. }
  530.  else if((((unsigned char)C))>(122)){
  531. R=C;
  532. }
  533. else{
  534. R=((T3)((((unsigned char)C))-(32)));
  535. }
  536. /*FI]*/
  537. return R;
  538. }
  539.  
  540.  
  541. T6 r3is_separator(T3 C){
  542. T6 R=0;
  543. {int z1=C;
  544.  
  545. if((0==z1)||((9<=z1)&&(z1<=10))||(13==z1)||(32==z1)){
  546. R=1;
  547. }
  548. }
  549. return R;
  550. }
  551.  
  552.  
  553. T3 r3to_lower(T3 C){
  554. T3 R=0;
  555. /*[IF*/
  556. if((((unsigned char)C))<(65)){
  557. R=C;
  558. }
  559.  else if((((unsigned char)C))>(90)){
  560. R=C;
  561. }
  562. else{
  563. R=((T3)((((unsigned char)C))+(32)));
  564. }
  565. /*FI]*/
  566. return R;
  567. }
  568.  
  569.  
  570. T6 r3same_as(T3 C,T3 a1){
  571. T6 R=0;
  572. /*[IF*/
  573. if((C)==(a1)){
  574. R=1;
  575. }
  576. else{
  577. {int z1=((unsigned char)C);
  578.  
  579. if(((65<=z1)&&(z1<=90))){
  580. R=(((unsigned char)C))==((((unsigned char)a1))-(32));
  581. }
  582.  else 
  583. if(((97<=z1)&&(z1<=122))){
  584. R=(((unsigned char)C))==((((unsigned char)a1))+(32));
  585. }
  586. }
  587. }
  588. /*FI]*/
  589. return R;
  590. }
  591.  
  592.  
  593. T6 r3_px_6261(T3 C,T3 a1){
  594. T6 R=0;
  595. R=(((unsigned char)C))>=(((unsigned char)a1));
  596. return R;
  597. }
  598.  
  599.  
  600. T6 r3_px_60(T3 C,T3 a1){
  601. T6 R=0;
  602. R=(((unsigned char)C))<(((unsigned char)a1));
  603. return R;
  604. }
  605.  
  606.  
  607. T6 r3is_letter(T3 C){
  608. T6 R=0;
  609. {int z1=C;
  610.  
  611. if(((65<=z1)&&(z1<=90))||((97<=z1)&&(z1<=122))){
  612. R=1;
  613. }
  614. }
  615. return R;
  616. }
  617.  
  618.  
  619. T6 r3is_digit(T3 C){
  620. T6 R=0;
  621. {int z1=C;
  622.  
  623. if(((48<=z1)&&(z1<=57))){
  624. R=1;
  625. }
  626. }
  627. return R;
  628. }
  629.  
  630.  
  631. T2 r3value(T3 C){
  632. T2 R=0;
  633. R=(((unsigned char)C))-(48);
  634. return R;
  635. }
  636.  
  637.  
  638. T359 r359realloc(T359 C,T2 a1,T2 a2){
  639. T359 R=NULL;
  640. R=calloc(a2,sizeof(T0*));
  641. r359copy_from(R,C,(a1)-(1));
  642. return R;
  643. }
  644.  
  645.  
  646. void r359set_all_with(T359 C,T0* a1,T2 a2){
  647. T2 _i=0;
  648. _i=a2;
  649. while (!((_i)<(0))) {
  650. (C)[_i]=(a1);
  651. _i=(_i)-(1);
  652. }
  653. }
  654.  
  655.  
  656. T2 r359fast_index_of(T359 C,T0* a1,T2 a2){
  657. T2 R=0;
  658. while (!(((R)>(a2))||((a1)==((void*)((C)[R]))))) {
  659. R=(R)+(1);
  660. }
  661. return R;
  662. }
  663.  
  664.  
  665. void r359copy_from(T359 C,T359 a1,T2 a2){
  666. T2 _i=0;
  667. _i=a2;
  668. while (!((_i)<(0))) {
  669. (C)[_i]=((a1)[_i]);
  670. _i=(_i)-(1);
  671. }
  672. }
  673.  
  674.  
  675. T6 r9fast_memcmp(T9 C,T9 a1,T2 a2){
  676. T6 R=0;
  677. T2 _i=0;
  678. R=1;
  679. _i=(a2)-(1);
  680. while (!(((_i)<(0))||(!(R)))) {
  681. R=((C)[_i])==((a1)[_i]);
  682. _i=(_i)-(1);
  683. }
  684. return R;
  685. }
  686.  
  687.  
  688. T9 r9realloc(T9 C,T2 a1,T2 a2){
  689. T9 R=NULL;
  690. R=calloc(a2,sizeof(T3));
  691. r9copy_from(R,C,(a1)-(1));
  692. return R;
  693. }
  694.  
  695.  
  696. void r9copy_at(T9 C,T2 a1,T9 a2,T2 a3){
  697. T2 _i2=0;
  698. T2 _i1=0;
  699. _i1=a1;
  700. while (!((_i2)==(a3))) {
  701. (C)[_i1]=((a2)[_i2]);
  702. _i2=(_i2)+(1);
  703. _i1=(_i1)+(1);
  704. }
  705. }
  706.  
  707.  
  708. T2 r9fast_index_of(T9 C,T3 a1,T2 a2){
  709. T2 R=0;
  710. while (!(((R)>(a2))||((a1)==((C)[R])))) {
  711. R=(R)+(1);
  712. }
  713. return R;
  714. }
  715.  
  716.  
  717. void r9copy_from(T9 C,T9 a1,T2 a2){
  718. T2 _i=0;
  719. _i=a2;
  720. while (!((_i)<(0))) {
  721. (C)[_i]=((a1)[_i]);
  722. _i=(_i)-(1);
  723. }
  724. }
  725.  
  726.  
  727. T61 r61realloc(T61 C,T2 a1,T2 a2){
  728. T61 R=NULL;
  729. R=calloc(a2,sizeof(T0*));
  730. r61copy_from(R,C,(a1)-(1));
  731. return R;
  732. }
  733.  
  734.  
  735. void r61set_all_with(T61 C,T0* a1,T2 a2){
  736. T2 _i=0;
  737. _i=a2;
  738. while (!((_i)<(0))) {
  739. (C)[_i]=(a1);
  740. _i=(_i)-(1);
  741. }
  742. }
  743.  
  744.  
  745. T2 r61fast_index_of(T61 C,T0* a1,T2 a2){
  746. T2 R=0;
  747. while (!(((R)>(a2))||((a1)==((void*)((C)[R]))))) {
  748. R=(R)+(1);
  749. }
  750. return R;
  751. }
  752.  
  753.  
  754. void r61copy_from(T61 C,T61 a1,T2 a2){
  755. T2 _i=0;
  756. _i=a2;
  757. while (!((_i)<(0))) {
  758. (C)[_i]=((a1)[_i]);
  759. _i=(_i)-(1);
  760. }
  761. }
  762.  
  763.